package cn.geekyspace.scanhive.domain.service;

import cn.geekyspace.scanhive.domain.entity.OperatorUserHistory;

import java.util.List;

public interface OperatorUserHistoryService {

    /**
     * 保存或更新历史记录，如果已存在，则更新最后访问时间
     *
     * @param username 用户输入或操作名称
     */
    void saveOrUpdateHistory(String username);

    /**
     * 批量保存或更新历史记录，如果已存在，则更新最后访问时间
     *
     * @param usernames 用户输入或操作名称列表
     */
    void saveOrUpdateHistoryBatch(List<String> usernames);

    /**
     * 查询最近使用的历史记录
     *
     * @param limit 查询条数限制
     * @return 最近历史列表，按 last_access_time 倒序
     */
    List<OperatorUserHistory> getRecentHistory(int limit);

}
